home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 34.zip / BS1 part 34 / Aztec C 5.0a disk 1.adf / include / graphics / gels.h < prev    next >
C/C++ Source or Header  |  1988-11-20  |  2KB  |  115 lines

  1. #ifndef    GRAPHICS_GELS_H
  2. #define    GRAPHICS_GELS_H
  3. #ifndef EXEC_TYPES_H
  4. #include "exec/types.h"
  5. #endif
  6. #define    SUSERFLAGS    0x00FF
  7. #define    VSPRITE    0x0001
  8. #define    SAVEBACK    0x0002
  9. #define    OVERLAY    0x0004
  10. #define    MUSTDRAW    0x0008
  11. #define    BACKSAVED    0x0100
  12. #define    BOBUPDATE    0x0200
  13. #define    GELGONE    0x0400
  14. #define    VSOVERFLOW    0x0800
  15. #define    BUSERFLAGS    0x00FF
  16. #define    SAVEBOB    0x0001
  17. #define    BOBISCOMP    0x0002
  18. #define    BWAITING    0x0100
  19. #define    BDRAWN    0x0200
  20. #define    BOBSAWAY    0x0400
  21. #define    BOBNIX    0x0800
  22. #define    SAVEPRESERVE    0x1000
  23. #define    OUTSTEP    0x2000
  24. #define    ANFRACSIZE    6
  25. #define    ANIMHALF    0x0020
  26. #define    RINGTRIGGER    0x0001
  27. #ifndef    VUserStuff
  28. #define    VUserStuff    SHORT
  29. #endif
  30. #ifndef    BUserStuff
  31. #define    BUserStuff    SHORT
  32. #endif
  33. #ifndef    AUserStuff
  34. #define    AUserStuff    SHORT
  35. #endif
  36. struct    VSprite
  37. {
  38. struct    VSprite    *NextVSprite;
  39. struct    VSprite    *PrevVSprite;
  40. struct    VSprite    *DrawPath;
  41. struct    VSprite    *ClearPath;
  42. WORD    OldY,    OldX;
  43. WORD    Flags;
  44. WORD    Y,    X;
  45. WORD    Height;
  46. WORD    Width;
  47. WORD    Depth;
  48. WORD    MeMask;
  49. WORD    HitMask;
  50. WORD    *ImageData;
  51. WORD    *BorderLine;
  52. WORD    *CollMask;
  53. WORD    *SprColors;
  54. struct    Bob    *VSBob;
  55. BYTE    PlanePick;
  56. BYTE    PlaneOnOff;
  57. VUserStuff    VUserExt;
  58. };
  59. struct    Bob
  60. {
  61. WORD    Flags;
  62. WORD    *SaveBuffer;
  63. WORD    *ImageShadow;
  64. struct    Bob    *Before;
  65. struct    Bob    *After;
  66. struct    VSprite    *BobVSprite;
  67. struct    AnimComp    *BobComp;
  68. struct    DBufPacket    *DBuffer;
  69. BUserStuff    BUserExt;
  70. };
  71. struct    AnimComp
  72. {
  73. WORD    Flags;
  74. WORD    Timer;
  75. WORD    TimeSet;
  76. struct    AnimComp    *NextComp;
  77. struct    AnimComp    *PrevComp;
  78. struct    AnimComp    *NextSeq;
  79. struct    AnimComp    *PrevSeq;
  80. WORD    (*AnimCRoutine)();
  81. WORD    YTrans;
  82. WORD    XTrans;
  83. struct    AnimOb    *HeadOb;
  84. struct    Bob    *AnimBob;
  85. };
  86. struct    AnimOb
  87. {
  88. struct    AnimOb    *NextOb,    *PrevOb;
  89. LONG    Clock;
  90. WORD    AnOldY,    AnOldX;
  91. WORD    AnY,    AnX;
  92. WORD    YVel,    XVel;
  93. WORD    YAccel,    XAccel;
  94. WORD    RingYTrans,    RingXTrans;
  95. WORD    (*AnimORoutine)();
  96. struct    AnimComp    *HeadComp;
  97. AUserStuff    AUserExt;
  98. };
  99. struct    DBufPacket
  100. {
  101. WORD    BufY,    BufX;
  102. struct    VSprite    *BufPath;
  103. WORD    *BufBuffer;
  104. };
  105. #define    InitAnimate(animKey)    {*(animKey)    =    NULL;}
  106. #define    RemBob(b)    {(b)->Flags    |=    BOBSAWAY;}
  107. #define    B2NORM    0
  108. #define    B2SWAP    1
  109. #define    B2BOBBER    2
  110. struct    collTable
  111. {
  112. int    (*collPtrs[16])();
  113. };
  114. #endif
  115.